using System;
using System.Collections.Generic;
using System.Text;

namespace RapidHDL
{
    public class TestFabric : RapidHardware
    {
        public override bool ConfigureSettings()
        {
            Settings.UseStart = false;
            Settings.BuildHardware = true;
            Settings.ForceBuildHardware = false;
            Settings.RunFromXilinx = true;
            Settings.ClockFrequency = 1;
            Settings.UseSDRAM = true;
            Settings.BuildRemote = false;
            return true;
        }

        FabricTest oFabric;

        public override bool GenerateStructure(TopLevelComponent TopLevelComponent)
        {
            TopLevelComponent.TestBusWrite.Join(0);
            oFabric = new FabricTest(TopLevelComponent, "test", TopLevelComponent.MainClock, TopLevelComponent.MainReset);
            oFabric.AddSignalSources();
            return true;
        }

        public override bool ConfigureSignalViews(TopLevelComponent TopLevelComponent)
        {
            oFabric.AddSignalViews();
            return true;
        }


        public override bool GenerateHardwareScripts()
        {
            HardwareScript oScript = HardwareScripts.NewScript("test");

            return true;
        }

    }
}
